package com.ruoyi.clerkBalance.service;


import com.ruoyi.clerkBalance.domain.ClerkBalance;

import java.math.BigDecimal;
import java.util.List;

public interface IClerkBalanceService {

    /**
     * 查询余额记录
     *
     * @param id 余额记录主键
     * @return 余额记录
     */
    public ClerkBalance selectClerkBalanceById(Long id);

    /**
     * 某用户的一条记录
     *
     * @param storeUserId 余额记录主键
     * @return 余额记录
     */
    public ClerkBalance selectClerkBalanceByStoreUserId(Long storeUserId);

    /**
     * 查询余额记录列表
     *
     * @param adapayBalance 余额记录
     * @return 余额记录集合
     */
    public List<ClerkBalance> selectClerkBalanceList(ClerkBalance adapayBalance);

    /**
     * 新增余额记录
     *
     * @param adapayBalance 余额记录
     * @return 结果
     */
    public int insertClerkBalance(ClerkBalance adapayBalance);

    /**
     * 修改余额记录
     *
     * @param adapayBalance 余额记录
     * @return 结果
     */
    public int updateClerkBalance(ClerkBalance adapayBalance);

    /**
     * 批量删除余额记录
     *
     * @param ids 需要删除的余额记录主键集合
     * @return 结果
     */
    public int deleteClerkBalanceByIds(Long[] ids);

    /**
     * 批量逻辑删除余额记录
     *
     * @param ids 需要删除的余额记录主键集合
     * @return 结果
     */
    public int logicDeleteClerkBalance(Long[] ids,String delType,Long delUser);
    /**
     * 删除余额记录信息
     *
     * @param id 余额记录主键
     * @return 结果
     */
    public int deleteClerkBalanceById(Long id);

    /**AdapayBalanceRecord.java
     * 根据门店获取当前余额信息
     * @param storeId
     * @return
     */
    public  ClerkBalance getClerkBalanceByStoreId(Long storeId);

    public  ClerkBalance getClerkBalanceByStoreUserId(Long StoreUserId);

    /**
     *
     * @param storeId
     * @param money
     * @param hanleType 加法add 减法sub
     */
    public void handleBalance(Long storeId,Long storeUserId, BigDecimal money, String hanleType, String handleName, String techRemark, String busType,String type);


}
